package dsl

type TaskConfig struct {
	Task     TaskMetadata      `json:"task"`
	Metadata TaskConfiguration `json:"metadata"`
}

type TaskMetadata struct {
	ID   string `json:"id"`
	Name string `json:"name"`
}

type TaskConfiguration struct {
	Nodes       []NodeData       `json:"nodes"`
	Connections []ConnectionData `json:"connections"`
}

type NodeData struct {
	ID            string                 `json:"id"`
	Type          string                 `json:"type"`
	Name          string                 `json:"name"`
	DebugMode     bool                   `json:"debugMode"`
	Configuration map[string]interface{} `json:"configuration"`
}

type ConnectionData struct {
	FromID string `json:"fromId"`
	ToID   string `json:"toId"`
}
